package dd.lo;

import dd.lo.chapter11.Example5;
import dd.lo.chapter14.C14E1;
import dd.lo.chapter22.FaceDetector;
import dd.lo.classifier.MnistViewer;
import dd.lo.classifier.WrittenNumberClassifier;
import dd.lo.flann.FlannMatchExample;
import dd.lo.pdfimg.ImageCropper;
import dd.lo.pdfimg.PdfImgExtractor;
import dd.lo.practice.*;
import dd.lo.video.VideoToGifUtil;
import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;

public class HelloCV {
    public static void main(String[] args){
        String path = HelloCV.class.getResource("/libopencv_java481.dylib").getPath();
        System.out.println(path);
        System.load(path);
        Mat mat = Mat.eye(3, 3, CvType.CV_8UC1);
        System.out.println("mat = " + mat.dump());

        //图像修复
//        Example5.start(args);

        //C14E1
//        C14E1.main(args);

        //PDF image extractor
//        PdfImgExtractor.start(args);

        //FLANN match example
//        FlannMatchExample.start(args);

        //Image cropper
//        ImageCropper.start(args);

        //MNIST viewer
//        MnistViewer.start(args);

        //Written number classifier
//        WrittenNumberClassifier.start(args);

        //Face detector
//        FaceDetector.start(args);

        //Merge two images using alpha blend
//        RoiAddImage.start(args);

        //Image DFT processing and result display
//        DftDisplay.start(args);

        //Display different image filter result
//        FilterDisplay.start(args);

        //Display different image filter result
//        MorphologyDisplay.start(args);

        //Display different image edge detection result
//        EdgeDetectionDisplay.start(args);

        //Display different line detection result
//        HoughLinesDisplay.start(args);

        //Display image's warp affine result
//        AffineDisplay.start(args);

        //Display image's warp affine result
//        EqualizeHistDisplay.start(args);

        //Display image's warp affine result
//        PutChineseDisplay.start(args);

        //Display image's contours and its convexes
//        ConvexHullDisplay.start(args);

        //Display image's contours and its convexes
//        HistCalcDisplay.start(args);

//        //Detect and display image's corner
//        CornerDetectionDisplay.start(args);
    }

}
